In computer networks, a number of network stations are typically interconnected via a communications medium. For example, Ethernet 802.3 is a commonly used local area network (LAN) scheme in which multiple stations are connected to a shared or dedicated serial data path. These stations often communicate with a switch or some other network device located between the data path and the stations connected to that path. The switch typically controls the communication of packets and includes logic for receiving and forwarding packets to their appropriate destinations.
Some conventional network switches provide different classes of service for packets they forward. The particular class of service to be provided to a packet may be identified within the header of the packet in a field reffered to as the differentiated services field. Differentiated service enhancements to the standard Internet protocol enable scalable service discrimination without the need for per-flow state and signaling at every switch in the network. Through the differentiation services field, a switch can determine priority and other forwarding information for a packet.
Some packets may not have a differentiated services field. Instead, in their header portion, the packet may include a direct indication of the priority level that the switch should assign to the packet. Alternatively, or additionally, the switch may apply predetermined policy equations to the packet to determine how the packet should be handled. As an example of a policy equation, the switch may block all packets from a certain IP address.
There is a need in the art to be able to efficiently forward packets based on embedded differentiated services codes, priority fields, and/or policy equations.